package com.googlecode.maratische.google.dao;

import java.sql.SQLException;
import java.util.List;

import com.googlecode.maratische.google.BaseException;
import com.googlecode.maratische.google.model.Model;


public interface BaseDao<T extends Model> {


	List<T> list() throws SQLException, BaseException;
	List<T> list(String order) throws SQLException, BaseException ;
	List<T> list(String where,String order, Object... values) throws SQLException, BaseException;
//	ResultContainer<T> list(Paging paging,String where,String order, Object... values) throws SQLException;
	T get(Integer id) throws SQLException, BaseException ;
	T save(T payment) throws SQLException, BaseException;
	boolean remove(T payment) throws BaseException;
	boolean remove(Integer id) throws BaseException;

}
